吏部尚书的三公子王金龙,晋京领取俸银,归途中遇坏人诱其嫖院,与妓女苏三一见钟情。在院中未及一年,囊中金尽,两手空空,被鸨儿逐出妓院,沦为乞丐,日间讨饭充饥,夜宿关王庙内。
苏三伪称烧香,带银去会王金龙,嘱其还乡,以图后举。王金龙路经落凤坡,又遇强盗打劫,不得已三次进院,玉堂春二次赠银。二人山盟海誓,他不另娶,她不另嫁。王金龙立志发奋攻读,成就功名。
王金龙走后,苏三被鸨儿骗卖给山西富商沈燕林做妾。苏三托病不婚,受尽沈妻皮氏虐待。皮氏与奸夫赵昂合谋,欲害死苏三。不料沈燕林误食药面,中毒身亡。皮氏诬陷苏三谋害亲夫。洪洞县令受贿卖法,屈打成招,将苏三问成死罪。
王金龙赴考得中,官封八府巡按,视察山西,在洪洞县发现谋死亲夫一案,有苏三牵连在内,于是太原歇马,调案复查。
经过三堂会审,案情大白。王金龙微服探监之后,毅然据实而断,使苏三沉冤昭雪。
苏三脱出囹圄。藩司潘必正、臬司刘秉义老于世故,顺水推舟,主动作筏,王金龙遂与苏三结成连理,有情人终成眷属。